home *** CD-ROM | disk | FTP | other *** search
/ PC-SIG Library 8 / PC-SIG Library CD-ROM (8th Edition) (1990-04).iso / 001_100 / disk0054 / programn.ote < prev    next >
Encoding:
Text File  |  1982-05-16  |  27.3 KB  |  508 lines

  1.                                                                         4/25/82
  2. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  3.  
  4.          IBM ASYNCHRONOUS COMMUNICATIONS SUPPORT PROGRAM MODIFICATIONS
  5.                              BY ROBERT C. RICE
  6.  
  7.                                PROGRAM NOTES
  8.  
  9. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  10.  
  11. The IBM Asynchronous Communications Support Program Modifications have been
  12. provided to correct and enhance the original version of the IBM program.
  13. This section, Program Notes, will describe how to implement these improvements
  14. in your copy of the program.  A section on how to create a new version and
  15. merge it with the original program is provided.  Then, a description of the
  16. program and values that must be supplied by you, completes the process.  When
  17. finished with creating the new program version, you'll be ready to proceed
  18. to the tutorial on how to use the program.  Persons receiving a program disk-
  19. ette with the modifications installed, should now proceed to section II.
  20.  
  21. I.  In describing the procedures required to build a program diskette with mod-
  22. ifications included, I assume a basic level of knowledge on the part of the
  23. person trying to perform the tasks involved.  He or she must have a complete
  24. understanding of BASIC commands to load, edit and save programs, as well as
  25. commands within the DOS for copying, formatting, and calling batch files.
  26.  
  27. There are several different ways to go about modifying or creating this new
  28. program version.  I will suggest one way, but if you feel more comfortable
  29. with some other way, use your own. The instructions that follow apply to both
  30. the 64K and 96K versions unless specifically noted. Use the following steps
  31. to build a new Asynchronous Communications diskette:
  32.  
  33. 1.  Format a diskette with the DOS system on it.  Use DOS command FORMAT with
  34.     the "/S" option.
  35.  
  36. 2.  For people who are obtaining this program modification through a computer
  37.     network, such as the SOURCE, or CompuServe and will be using a Download
  38.     to obtain it, proceed with the Download onto the newly formatted diskette
  39.     under file name "MODS.BAS".  After completing the Download and logging off,
  40.     utilize EDLIN and remove all commands and prompts from both the beginning
  41.     and end of file "MODS.BAS".  The result should be that the only thing left
  42.     in the file is program code.  For those who are entering the modification
  43.     from the keyboard, load a DOS diskette and type BASIC.  Begin entering
  44.     the modification from the listing provided.  I suggest that you NOT use
  45.     the automatic line numbering feature of the BASIC interpreter since line
  46.     numbers within the modification are not contiguous.  When all program lines
  47.     have been entered, store the program on the newly formatted diskette as
  48.     follows: SAVE "MODS",A and enter.  The ",A" is important since only ASC
  49.     files may be used for the merging process that will take place later.  File
  50.     name extension ".BAS" will be provided automatically by the BASIC program.
  51.  
  52. 3.  If having entered the program modifications manually, then return to DOS
  53.     by typing SYSTEM.  In any case you should now utilize the COPY command and
  54.     place files DATE.COM, TIME.COM, and BASIC.COM on the new program diskette
  55.     from the DOS program diskette.
  56.  
  57. 4.  Utilize the original or a copy of the original IBM Asynchronous Communica-
  58.     tions Support program and copy RS232INT.BAS on to the new program diskette.
  59.  
  60. 5.  Create a new AUTOEXEC.BAT file as follows:
  61.     (enter) means depress enter key
  62.  
  63.     COPY CON:AUTOEXEC.BAT  (enter)
  64.     REM ..Entry of TIME and DATE optional. ENTER only, to bypass (enter)
  65.     DATE    (enter)
  66.     TIME    (enter)
  67.     BASIC SHORTERM.BAS/S:0/C:50 (enter)  (64K VERSION ONLY)
  68.     BASIC LONGTERM.BAS    (enter)  (96K VERSION ONLY)
  69.     F6      (enter)       (displayed on screen as ^Z)
  70.  
  71. 6.  Load the original program named TERMINAL.BAS into memory utilizing the
  72.     load command.  From DOS first type BASIC and enter.  This will put you
  73.     into BASIC.  Now type LOAD "TERMINAL" and enter.
  74.  
  75. 7.  For the 64K VERSION ONLY, delete program line numbers as follows:
  76.  
  77.     600-625                        2843
  78.     740-765                        13000-13020
  79.     975                            13050-13260
  80.     1001-1003                      13319-13369
  81.     2050-2511                      13450-13530
  82.     2541-2560                      13995-14031
  83.     2600-2700                      14034-14720
  84.     2815-2822                      15100-16145
  85.  
  86.     (Note: Single lines may be deleted by entering line number, then "ENTER".
  87.     For multiple lines, use DELETE. Enter them exactly as shown, followed by
  88.     "ENTER". Each line of numbers with a "-" between them must be done individ-
  89.     ually.  In otherwords, one for each DELETE command.)
  90.  
  91. 8.  Now use the MERGE command and merge the file named MODS.BAS into the
  92.     original program stored in memory.  (Be sure to include the disk drive
  93.     designator if necessary.  Also, it may take some time for the merge to be
  94.     completed.  The red light on the disk drive will cycle on and off several
  95.     times.  However, the merge process is not complete until the BASIC prompt
  96.     Ok has been displayed.)
  97.  
  98. 9.  Utilize the BASIC "SAVE" command and store the modified program on disk-
  99.     ette.  Be sure to use file name SHORTERM.BAS for the 64K version and
  100.     LONGTERM.BAS for the 96K version.
  101.  
  102. 10. Depress CTRL,ALT, DEL and load/run the program.  When asked to enter Time
  103.     and Date, simply depress "ENTER" and bypass the entry.  If the new program
  104.     will not load and run, displaying the program name and the question "Bypass
  105.     intermediate menus (y/n)?", then return to step 1. and redo, otherwise
  106.     depress CTRL,BREAK, stop program execution and proceed with Section II.
  107.  
  108. II. This begins the second section of Program Notes.  First, information is
  109. provided so that the user will be able to supply the program with required
  110. data.  Secondly, a description of all major program modifications and some of
  111. the reasoning behind them is provided for the experienced programmer.
  112.  
  113. ADAPTING THE PROGRAM TO YOUR SPECIFICATIONS.  These data are listed by line
  114. number, followed by the description of the needed or optional data you must
  115. supply.
  116.  
  117. 635 - 781 (64K version) 605 - 781 (96K version)   The data statements in this
  118. area have been modified to provide two new user selectable parameters for each
  119. terminal type.  Also, certain values in the Full Duplex data statement have
  120. been changed to provide compatibility with the SOURCE, CompuServe, and like
  121. networks. The two new parameter values supplied are Display Selection and
  122. for the Hayes Smartmodem a selection for Type of Dialing, touch tone or pulse
  123. type.  Display selection need not be set since it does not affect which dis-
  124. play the program uses first.  This is determined by the setting of the SW1
  125. switch on the system board.  The selection menu does not display a default
  126. value for this reason, but provides the user with the ability to change dis-
  127. plays during the operation of the program.  The Dialing Type selection is pre-
  128. set to touch tone. If your telephone requires pulse type dialing, this value
  129. may be changed as follows: (64K version) change lines 775 and 781.(96K version)
  130. change lines 745, 755, 775, and 781.   Counting from the first value in the
  131. data statement on the left side, change the 17th value from a 1 to a 2.
  132. Other values changed from the original program include values set for Full
  133. Duplex operation.  They are Parity type Even, mode of character echoing, in
  134. this case "Chars Displayed when Echoed by Host", First character to be deleted
  135. is Carriage return, Second character to be deleted is Line Feed, Third char-
  136. acter to be deleted is Escape.  All other values for Full Duplex operation
  137. remain the same as the original program.  If you wish to change these values
  138. I suggest looking at the program listing lines 6208 - 6218 for parity, lines
  139. 7510 - 7515 for Mode of Character Echoing, lines 321 - 327 for Character to
  140. be deleted.  Utilize the number within the "()" for the desired attribute.
  141. Insert the value in the data statement counting from the left, for parity
  142. change the second value, for Mode of Character Echoing change the nineth value,
  143. for Deleted Characters 1, 2, and 3, change the tenth, eleventh and twelveth
  144. values respectively. Line number 775 should be modified to contain the values
  145. desired as described above. (Note: Users without a Hayes Smartmodem need not
  146. make changes to the Pulse or Touch tone parameter since it will not affect
  147. you.)
  148.  
  149. 937  Variable VDO determines the width to be used for monitors connected to the
  150. color graphics adapter.  Screen width is selected automatically by the pro-
  151. gram depending upon the type of monitor used.  The screen or character width
  152. used for the monochrome display is 80, and the width for color video monitors
  153. and televisions is set by variable VDO.  VDO=40 in the present program.  If
  154. the color video monitor you are using is capable of an 80 character screen
  155. width, then reset VDO=80.
  156.  
  157. 1811  The last statement on this line is SMART=TRUE.  This statement is used
  158. to set the type of modem used.  If a Hayes Smartmodem is not used, set this
  159. statement to SMART=FALSE.  This statement is used during the Autodial/LOG-ON
  160. portion of the program modification.
  161.  
  162. 32000  The last statement on this line is TLN=9.  TLN represents the number
  163. of telephone numbers listed in the telephone menu.  The minimum value is 1 and
  164. the maximum number is 9.  A value of 1 will result in the telephone menu not
  165. being displayed, but when used with a Smartmodem will cause the one number
  166. supplied to be dialed.  When not used with a Smartmodem, the one number listed
  167. will be displayed when instructed to place the call manually.
  168.  
  169. 32320 - 32410  This is the most important part of the information to be
  170. supplied by the user.  The DATA statements that occur on these lines supply
  171. the program with the information needed for the telephone menu and the auto-
  172. matic LOG-ON feature.  It is extremely important that this information be
  173. provided correctly and completely for the program to operate as designed. The
  174. DATA statements provided in the program are samples to be used as a guide. Each
  175. element within the data statement must be separated by a comma as shown and
  176. data which contains commas must be enclosed with "" (double quote marks).
  177. of the data statements is as follows:
  178.  
  179. #1. Company name, such as SOURCE or CompuServe (shortened to CSERVE, must not
  180.     exceed 6 characters.)
  181.  
  182. #2. Telephone number to be dialed.  This number may include an area code if
  183.     necessary, however if included, will cause a wrap-around on a 40 character
  184.     display.  Provision has not been made for dial-ups using independent
  185.     telephone networks such as MCI shich require dialing two separate numbers.
  186.     If you require such a dial-up contact me for information.
  187.  
  188. #3. City in which the telephone number specified in #2 above is located.
  189.     This is helpful when determining if the call being made is a local or toll
  190.     call.  I suggest providing at least two telephone numbers for each company
  191.     or at least the same telephone number with an alternate sign-on procedure
  192.     in which case the city in the entry may be replace by a notation of the
  193.     alternate sign-on.  (See item 10 in the first document, Program Descrip-
  194.     tion for more information on alternate sign-ons.)
  195.  
  196. #4. Name of the Telephone network being utilized by the phone number supplied
  197.     in #2.  This is needed information when having to manually intervene in the
  198.     sign-on procedure since each network requires a unique set of entries.
  199.  
  200. #5. The number of the Telephone LOG-ON procedure to be used.  Numbers should
  201.     be supplied depending upon combination of Network and Telephone Company
  202.     as follows:  SOURCE via TYMNET = 1.  SOURCE via TELENET = 2.  CompuServe
  203.     via CompuServe network = 3.  CompuServe via TYMNET = 4.
  204.  
  205. #6. LOG-ON data.  This item for the SOURCE includes log-in to a particular
  206.     system number.  For CompuServe this item should be your user identification
  207.     number enclosed in " " double quotation marks.
  208.  
  209. #7. ID/PASSWORD.  For the SOURCE this item includes ID number and password.
  210.     For CompuServe this item includes password only.
  211.  
  212. Here are two examples of the DATA statements you must provide:
  213.  
  214. 32320 DATA SOURCE,764-4321,Seattle,TYMNET,1,SOURCE11;PRIM;,ID TCA123 PASWRD
  215.  
  216. 32330 DATA CSERVE,987-6543,Bellvue,TYMNET,4,"77000,1100",PASS/WORD
  217.  
  218. Once you have completed changes, utilize the BASIC SAVE command and store the
  219. modified program on diskette.  DO NOT use the ",A" option of the save command.
  220. This will store the program in a compressed binary format, and will allow the
  221. program to load faster than in ASC format.  Be sure to use file name SHORTERM.
  222. BAS for the 64K version and LONGTERM.BAS for the 96K version.
  223.  
  224. The next section is designed for experienced programmers and is optional, nice
  225. to know information only.  Read it at your leisure.  When ready, you may pro-
  226. ceed to the Tutorial.
  227.  
  228.  
  229. PROGRAM MODIFICATION CODING NOTES.  This information is organized by program
  230. line number.  The data provided appears like program line remarks, only in more
  231. detail.  These remarks should be read in conjunction with a program listing.
  232.  
  233. 115 - 210 (96K version only)  The DEF SEG statements were changed to relocate
  234. the RS232INT.BAS machine language routine in memory above 64K.  Line 200 was
  235. changed to eliminate reserving 35K for the machine language program in BASICs
  236. 64K work space.
  237.  
  238. 223  This statement determines whether time was entered into the system when
  239. the program was loaded.  If the time is not entered upon system startup, then
  240. the time will not be displayed on line 25 in the time/date/status area.  One
  241. work of caution is in order.  If the system is initialized and the entered
  242. time is between 00:00:00 and 00:09:59, then the program will consider the
  243. time not to have been entered.  The time/date/status line coding begins on line
  244. 33000.
  245.  
  246. 223 - 225 (64K version only) Variables IZF and ICN have been reset to conserve
  247. memory in the 64K version.
  248.  
  249. 330  The error message array has been expanded to include a printer error msg.
  250.  
  251. 400 - 403 (64K version) 400 - 460 (96K version)  A terminal type array has been
  252. added so that "Starting up as" and "Returning as" screen printouts also in-
  253. clude information as to which terminal type has been selected.
  254.  
  255. 866 - 867  The terminal parameter array has been expanded to include a Display
  256. Selection option and a Modem Dialup option.
  257.  
  258. 937 - 949  Screen width is determined by reading display flags set in mem-
  259. ory.  Then, a new program title is provided indicating the program version,
  260. acknowledging contributers and centering the display.
  261.  
  262. 950 - 966  An option is provided to bypass intermediate menus, proceeding
  263. directly to terminal operation.
  264.  
  265. 1004 - 1005  (64K version only)  The size of the Terminal Selection Menu has
  266. been reduced in the 64K version to conserve memory.  These lines redesignate
  267. C$(1) and (2), eliminating VM370, TSO, and Half Duplex terminal selections
  268. from the menu.
  269.  
  270. 1050  When the user elects to bypass intermediate menus, the menu selection
  271. is provided by the program.  Variable IMEN contains the menu item number sel-
  272. ected.  In the 64K version IMEN = 1 and in the 96K version IMEN = 4.  This dif-
  273. ference is due to the number of terminal selections available in each version.
  274. If a user has a special application and would prefer bypassing intermediate
  275. menus and starting up as something other than a Full Duplex Terminal, then
  276. the value assigned to IMEN may be changed to the number of the corresponding
  277. terminal selection menu item.
  278.  
  279. 1066  String variable TMSL$ is set to equal the terminal type selected.
  280.  
  281. 1170  Terminal type now used as part of terminal parameter selection title.
  282.  
  283. 1185  When intermediate menus are bypassed and Full Duplex or other terminal
  284. type is automatically designated this statement will cause the "Start Up
  285. Selected Terminal" option of the Terminal Feature menu to be executed.
  286.  
  287. 1520  The ON IP GOTO statement now includes the additional line numbers to im-
  288. plement the additional terminal features added to the program.  (Display Selec-
  289. tion and Modem Dialup options.)
  290.  
  291. 1800  GOSUB 35000 added to implement the Display Selection feature.
  292.  
  293. 1811 - 1820  Additional string variables added to provide for more function
  294. key features.  Variables LON, ULON are set to indicate Log File, and Upload
  295. are initially off. Variable INIT set to indicate F8 function key initially
  296. set for dialup menu mode.  Additional code to handle new function key features
  297. begins on line 2751.
  298.  
  299. 2005  Statement added to key machine code Set Sense routine to end input
  300. string on Back Space code.  The rest of Back Space handler begins on line 5106.
  301.  
  302. 2024  GOSUB 2788 added so that error messages are turned on when terminal
  303. operation is begun.
  304.  
  305. 2025  "Starting up as" message now includes selected terminal type.
  306.  
  307. 2027  BASICs string space is re-organized and unused space is re-allocated.
  308. GOSUB statements are provided to display function key help menu and startup
  309. comments when terminal initialization is performed.
  310.  
  311. 2480 - 3603  (96K version only) Half Duplex SENDING state function key handler
  312. routine, including error message for use of function keys not used in the
  313. SENDING state.
  314.  
  315. 2531  Entry point for Download of incoming data.
  316.  
  317. 2710 - 2713  Error trapping provided for printer when F1 function key used.
  318.  
  319. 2751 - 2785  Function key handler routines.
  320.  
  321. 2803 - 2830  Additional menu items added to Terminal Function Selection menu
  322. entered through use of F2.  Upload, Download, BASIC (pause), Exit Comm. to
  323. BASIC, Exit Comm. to DOS have been added.  Upload and Download selections
  324. will indicate either open file or close file, including file name depending
  325. upon status of the function.  Exit Comm. routines provide for the complete
  326. close out of Com1: to eliminate possibility of program hangup.
  327.  
  328. 2843  In the 64K version this line has been removed.  No options would be
  329. present that would not be available to the terminal type selected.  In the 96K
  330. version the IMEN values have been adjust to account for additional menu items.
  331.  
  332. 2844  If the return to terminal selection menu is selected, then the flag
  333. indicating automatic selection Full Duplex is cleared.
  334.  
  335. 2845  Additional line numbers are provided in the ON IMEN GOTO statements
  336. to implement the additional menu selections.
  337.  
  338. 3100 - 3101  Error trapping is provided for the printer routine.
  339.  
  340. 3400  A call has been added to the Transmit function of the machine code
  341. routine which provides for the transmission of an XON if XOFF/XON is being
  342. supported in the program so that when returning from the terminal function
  343. selection menu, transmission from the Host system will resume.  See line
  344. 5215 for XOFF transmission.
  345.  
  346. 3405  "Back as " terminal type is implemented here.
  347.  
  348. 3430 - 3435  This code allows for the use of F5 to return from BASIC, instead
  349. of having to type "CONT" and then "enter" as the original program version did.
  350.  
  351. 3440 - 3450  This is the error handling routine for the printer.
  352.  
  353. 3540 - 3544  These lines are added to the error message array for printer
  354. errors.  See line 330 for new DIM statement.
  355.  
  356. 3815 - 3825  This code provides for the correct handling of time/date/status
  357. line in conjunction with error message printouts for 40 character width
  358. screens.  Status printouts appear on line 25, while error messages will appear
  359. on line 24.
  360.  
  361. 3955  This code disables input parity error messages.
  362.  
  363. 5002  Variable TME is set to a value which will cause the initial time/date/
  364. status line to be printed for terminal startup.
  365.  
  366. 5106 - 5107  This code insures that a received Back Space code is handled
  367. properly to perform an actual back space.
  368.  
  369. 5110 - 5116  This code allows for the printout of incoming data on the printer
  370. when the print function has been enable by use of F7.  Lines 2783 - 2785
  371. handle the F7 function key input.
  372.  
  373. 5200  The additional GOSUB provides for the update of time during the Full
  374. Duplex loop.  Time will be updated only once each minute.
  375.  
  376. 5201 - 5202  This is the entry point for the Upload function. If active and
  377. an XOFF has not been received from the Host then control is given to the Upload
  378. function to determine if it is time to send another line.
  379.  
  380. 5215  This change provides for the transmission of an XOFF to the Host system
  381. when XON/XOFF is supported and the F2 terminal function menu is called to the
  382. screen.  This prevents input buffer overflow since the program is not looping
  383. through the section of the program which checks for buffer size when in the
  384. terminal function selection menu.  This is helpfull when a log file runs out
  385. of space and a new one must be opened to capture the rest of the incoming data.
  386.  
  387. 5265 - 5266  Error trapping is provided for the printer.
  388.  
  389. 5290 - 5300  This routine is called from line 5215 to transmit an XOFF.
  390.  
  391. 7900 - 7970  This routine provides menu data for the additional Display Sel-
  392. ection option.
  393.  
  394. 8000 - 8070  This routine provided menu data for the additional Modem Dialing
  395. option.
  396.  
  397. 17200 - 17300  This routine handles the opening of a Log File for Download
  398. purposes.  The file is opened for append to prevent accidental erasure of an
  399. existing file name.
  400.  
  401. 17310 - 17400  This routine is entered from line 2531 and handles writing data
  402. to the Log File.  Error trapping is provided to prevent program stoppage when
  403. a diskette becomes full.
  404.  
  405. 17410 - 17500  This routine handles the opening of a file for Upload.
  406.  
  407. 17510 - 17640  This routine handles the Uploading of file data for transmission
  408. to the Host system. If an Upload file has been opened and the Upload function
  409. is active, then a check is made to determine if the transmit buffer is empty.
  410. If so, then a line of data is output to the communications port.
  411.  
  412. 17660 - 17820  This routine allows for the optional printout of file direc-
  413. tories prior to naming a Log or Upload file name.  Error trapping is provided
  414. for disk and file errors.
  415.  
  416.  
  417. MAJOR SUBROUTINES are catalogued by function and starting line number as
  418. follows:
  419.  
  420. 31000 - Function Key and terminal startup help menu.
  421. 32000 - Telephone/LOG-ON Function handler.
  422. 33000 - Time/Date/Status line Function handler.
  423. 34000 - Terminate Comm. program Function handler.
  424. 35000 - Display Selection Function handler.
  425.  
  426. 31000 - 31120  This routine prints a Function Key Help Menu.  It is called
  427. upon terminal startup and also when the F5 key is depressed during terminal
  428. operation.
  429.  
  430. 31130 - 31190  This portion of the Help Menu routine is called upon terminal
  431. startup only and prints information on the screen that is helpful at that
  432. time.  If a Smartmodem is not used then the first line of data "Insure CAPS
  433. LOCK is on" is not printed since the reason for this warning is to insure
  434. capitals will be used when manually sending commands to the modem.
  435.  
  436. 32000 - 32310  This routine handles the Telephone Dialup Menu. There are 9
  437. possible entries in the menu in its present form.  Variable TLN on line 32000
  438. sets the number of entries in the menu.  A value of 1 will cause the menu to
  439. NOT be displayed, however, the entered telephone number will be dialed.  If
  440. a Smartmodem is not used, then the telephone menu selection provides the pro-
  441. per selection of LOG-ON data for the company being called and the telephone
  442. network being used. It then prompts the user to make the call manually and
  443. displays the selected telephone number.  Make sure the PRINT USING statements
  444. located on lines 32100 and 32110 utilize a "\" and NOT a "/".  Line 32100
  445. contains 6 spaces between the backlashes and line 32110 has 11 spaces between
  446. the backlashes.  Variable SMART is located on line 1811 and is set to FALSE
  447. if a Smartmodem is not being used.
  448.  
  449. 32320 - 32410  These line numbers contain the DATA statements required for the
  450. telephone menu and the auto LOG-ON function.  The format and content of these
  451. statements are fully covered in the previous section titled ADAPTING THE PRO-
  452. GRAM TO YOUR SPECIFICATIONS.
  453.  
  454. 32420 - 32570  This routine handles the automatic LOG-ON procedure.  LOG-ON
  455. procedures for the SOURCE and CompuServe are supported both including various
  456. procedures for different telephone networks.  Additional procedures may be
  457. added to this function.  Contact me for details if you have a unique applica-
  458. tion.  The use of additional keys in conjunction with this function allow for
  459. protection from accidentally disconnecting the modem, repeating a sign-on
  460. procedure, and initializing the F8 key from the beginning of the telephone
  461. dialup menu.  First, the LOG-ON sequence is manipulated by incrementing one
  462. of two variables.  Value GO is used to determine which of a non-repeatable
  463. set of commands will be executed to connect with a particular telephone net-
  464. work.  The variable GO is set initially by reading item 5 in the supplied
  465. data statements.  This directs the program to execute the statement beginning
  466. at the line number specified within the ON GO GOTO statement on line 32420.
  467. Additional commands within the GO sequence may be executed by resetting the
  468. GO variable such as on line 32460.  When telephone network log-in procedures
  469. have been completed, then value LGGR is set for the next sequence. The next
  470. sequence contains user ID and Password Data.  These commands may be repeated
  471. by depressing the curson left (numeric key 4) and then F8.  The cursor left
  472. key is handled on line 2752.  The disconnect protection is provided on line
  473. 32540; an error message is displayed instructing the user to display the F8
  474. Help Menu.  The disconnect feature is enabled by depressing the END key and
  475. then F8.  The END key handler is located on line 2753.  After disconnect, the
  476. value INIT is set to true, enabling the F8 key from the beginning of the
  477. telephone dialup menu.  The telephone dialup menu may be called at any time
  478. by depressing HOME and then F8. The HOME key handler is located on line 2751.
  479.  
  480. 32580 - 32670  This routine prints the F8 Help Menu on the screen and is called
  481. by the use of ALT H keys from line 2754.
  482.  
  483. 33000 - 33120  This routine handles the time/date/status information on line
  484. 25.  Time is normally updated once a minute.  When status symbols are changed
  485. other routines call upon this handler routine but enter on line 33010.
  486. Duplex terminals do not display the time/date/status line since in Half Duplex
  487. this line is used to display the SEND or RECEIVE state.  Time is converted
  488. from 24hr. format to 12hr. format displaying "AM" or "PM". Cursor location is
  489. saved at the beginning of the routine and restored at the end.  Time and date
  490. are not displayed if they were not originally entered at program startup.
  491.  
  492. 34000 - 34100  This routine handles the termination of the Communications
  493. program and exit to either BASIC or DOS.  Error protection is provided by
  494. asking the user if he or she is sure that they want to terminate the program.
  495. If so, files are closed and "COM1:" is closed to prevent future program hang-
  496. up.  If not, control is returned to the function selection menu.
  497.  
  498. 35000 - 35050  This routine is used to change from one display to the other.
  499. Width statements are executed both before and after the display selection
  500. (performed by use of a peek and poke) to insure the screen is cleared and
  501. the cursor is properly positioned on the screen.  Cursor height is also adjust-
  502. ed according to the display used.
  503.  
  504. This completes the section on Program Notes.
  505.  
  506. <* End of file *> 
  507.  
  508.